Various types of memory devices are used in electronic systems. Some types of memory device, such as DRAM (dynamic random access memory) provide large amounts of readable and writable data storage with modest power budget and in favorably small form factor, but are not as fast as other types of memory devices and provide volatile data storage capability. Volatile data storage means that the memory must be continuously powered in order to retain data, and the stored data are lost when the power is interrupted. Nonvolatile memories are capable of retaining data without requiring electrical power.
Other types of memory can provide read-only or read-write capabilities and non-volatile data storage, but are much slower in operation. These include CD-ROM devices, CD-WORM devices, magnetic data storage devices (hard discs, floppy discs, tapes and so forth), magneto-optical devices and the like.
Still other types of memory provide very high speed operation but also demand high power budgets. Static RAM or SRAM is an example of such memory devices.
In most computer systems, different memory types are blended to selectively gain the benefits that each technology can offer. For example, read-only memories or ROM, EEPROM and the like are typically used to store limited amounts of relatively infrequently-accessed data such as a basic input-output system. These memories are employed to store data that, in response to a power ON situation, configure a processor to be able to load larger amounts of software such as an operating system from a high capacity non-volatile memory device such as a hard drive. The operating system and application software are typically read from the high capacity memory and corresponding images are stored in DRAM.
As the processor executes instructions, some types of data may be repeatedly fetched from memory. As a result, some SRAM or other high speed memory is typically provided as “cache” memory in conjunction with the processor and may be included on the processor integrated circuit or chip and/or very near it.
Several different kinds of memory device are involved in most modern computing devices, and in many types of appliances that include automated and/or programmable features (home entertainment devices, telecommunications devices, automotive control systems etc.). As system and software complexity increase, need for additional memory increases. Desire for portability, computation power and/or practicality result in increased pressure to reduce both power consumption and circuit area per bit.
DRAMs have been developed to very high capacities in part because the memory cells can be manufactured to have a very small area, and the power draw per cell can also be made quite small. In turn, this allows memory integrated circuits to be made that incorporate millions of memory cells in each chip. Typical one-transistor, one-capacitor DRAM memory cells can be produced to have extremely small areal requirements.
Such areas are often equal to about 3 F×2 F, or less, where “F” is defined as equal to one-half of minimum pitch (see FIG. 4, infra). Minimum pitch (i.e., “P”) is defined as equal to the smallest distance of a line width (i.e., “W”) plus width of a space immediately adjacent the line on one side of the line between the line and a next adjacent line in a repeated pattern within the array (i.e., “S”). Thus, in many implementations, the consumed area of a given DRAM cell is no greater than about 8 F2.
However, because DRAMs are volatile memory devices, they require “refresh” operations. In a refresh operation, data are read out of each memory cell, amplified and written back into the DRAM. As a first result, the DRAM circuit is usually not available for other kinds of memory operations during the refresh operation. Additionally, refresh operations are carried out periodically, resulting in times during which data cannot be readily extracted from or written to DRAMs. As a second result, some amount of electrical power is always needed to store data in DRAM devices.
As a third result, boot operations for computers such as personal computers involve a period during which the computer cannot be used following power ON initiation. During this period, operating system instructions and associated data, and application instructions and associated data, are read from relatively slow, non-volatile memory, such as a conventional disc drive, are decoded by the processing unit and the resultant instructions and associated data are loaded into modules incorporating relatively rapidly-accessible, but volatile, memory such as DRAM. Other consequences flow from the properties of the memory systems included in various electronic devices and the increasingly complex software employed with them, however, these examples serve to illustrate ongoing needs.
Needed are methods and apparatus relating to non-volatile memory providing high areal data storage capacity, reprogrammability, low power consumption and relatively high data access speed.